package cn.com.chengmandian.xh.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 物联网电池信息表
 * </p>
 *
 * @author AutoGenerator
 */
@Getter
@Setter
@TableName("xh_iot_battery")
@ApiModel(value = "XhIotBattery对象", description = "物联网电池信息表")
public class XhIotBattery implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty("关联设备ID")
    private Integer deviceId;

    @ApiModelProperty("电池编码")
    private String batteryNo;

    @ApiModelProperty("电量")
    private Integer soc;

    @ApiModelProperty("性能状态")
    private Integer soh;

    @ApiModelProperty("总电压 mV")
    private Integer totalVoltage;

    @ApiModelProperty("放电电流 mA")
    private Integer current;

    @ApiModelProperty("循环次数")
    private Integer cycleTimes;

    @ApiModelProperty("温度，摄氏度")
    private BigDecimal temperature;

    @ApiModelProperty("火星经度")
    private BigDecimal lng;

    @ApiModelProperty("火星纬度")
    private BigDecimal lat;

    @ApiModelProperty("GPS经度")
    private BigDecimal gpsLng;

    @ApiModelProperty("GPS纬度")
    private BigDecimal gpsLat;

    @ApiModelProperty("海拔")
    private Integer altitude;

    @ApiModelProperty("速度 km/h")
    private BigDecimal speed;

    @ApiModelProperty("信号强度")
    private Integer rssi;

    @ApiModelProperty("通讯卡号")
    private String iccid;

    @ApiModelProperty("通讯设备号")
    private String imei;

    @ApiModelProperty("版本号，硬件.软件")
    private String version;

    @ApiModelProperty("软件版本号")
    private Integer versionSoftware;

    @ApiModelProperty("硬件版本号")
    private Integer versionHardware;

    @ApiModelProperty("电芯数量")
    private Integer cellCount;

    @ApiModelProperty("电芯电压")
    private String cellVoltage;

    @ApiModelProperty("最大压差mv")
    private Integer maxVd;

    @ApiModelProperty("工作模式")
    private Integer mode;

    @ApiModelProperty("放电 MOS 状态，1 导通，0 关闭")
    private Integer mosOut;

    @ApiModelProperty("充电 MOS 状态，1 导通，0 关闭")
    private Integer mosIn;

    @ApiModelProperty("预充 MOS 状态，1 导通，0 关闭")
    private Integer mosBefore;

    @ApiModelProperty("预充超过设定时间保护")
    private Integer guardOpttime;

    @ApiModelProperty("Unbalance 保护")
    private Integer guardBalance;

    @ApiModelProperty("高温温度保护")
    private Integer guardTover;

    @ApiModelProperty("放电电流保护")
    private Integer guardOload;

    @ApiModelProperty("低温温度保护")
    private Integer guardTover2;

    @ApiModelProperty("充电电流保护")
    private Integer guardOc;

    @ApiModelProperty("Cell 低压保护")
    private Integer guardCuv;

    @ApiModelProperty("Cell 过压保护")
    private Integer guardCov;

    @ApiModelProperty("Pack 高电压保护")
    private Integer abnormalAov;

    @ApiModelProperty("Pack 低电压保护")
    private Integer abnormalAuv;

    @ApiModelProperty("容量低，禁止放电")
    private Integer abnormalLowcap;

    @ApiModelProperty("充电器错误保护")
    private Integer abnormalCharger;

    @ApiModelProperty("长时间没有充电保护")
    private Integer abnormalNochg;

    @ApiModelProperty("Bad cell 保护")
    private Integer abnormalBadcell;

    @ApiModelProperty("高温预警")
    private Integer abnormalTemperature;

    @ApiModelProperty("数据上报时间")
    private Date collectTime;

    @ApiModelProperty("最后升级时间")
    private Date lastUpgradeTime;

    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("修改时间")
    private Date modifyTime;

}
